package com.lsh.oms.core.dao.po;

import com.lsh.oms.core.dao.MyBatisRepository;
import com.lsh.oms.core.model.po.OmsTask;
import org.apache.ibatis.annotations.Param;

import java.util.List;
/**
 * @author peter
 */
@MyBatisRepository
public interface OmsTaskDao {

    int deleteByPrimaryKey(Long id);

    int insertSelective(OmsTask record);

    OmsTask selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(OmsTask record);

    List<OmsTask> selectByFilter(OmsTask filter);

    List<OmsTask> selectByStatusAndTime(@Param("startTime") Integer startTime,
                                        @Param("endTime") Integer endTime,
                                        @Param("taskStatus") Integer taskStatus);

    List<OmsTask> selectByTypeAndStatuses(@Param("taskType") Integer taskType,
                                          @Param("taskStatuses") List<Integer> taskStatuses,
                                          @Param("fetchSize") Integer fetchSize);
}